package com.yike.user.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yike.user.entity.AgentWithdrawalApply;
import com.yike.user.param.AgentWithdrawalApplyPageParam;

import com.yike.user.param.PlatformWithdrawalApplyPageParam;
import com.yike.user.param.PlatformWithdrawalPageParam;
import com.yike.user.vo.AgentWithdrawalApplyVo;
import com.yike.user.vo.PlatformWithdrawalApplyVo;
import com.yike.user.vo.PlatformWithdrawalVo;
import org.apache.ibatis.annotations.Mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;

/**
 * 代理商提现申请表 Mapper 接口
 *
 * @author Sakura
 * @since 2024-09-23
 */
@Mapper
public interface AgentWithdrawalApplyMapper extends BaseMapper<AgentWithdrawalApply> {

    IPage<AgentWithdrawalApplyVo> selectAgentWithdrawalApplyList(@Param("page") Page page, @Param("agentId") Long agentId,
                                                                 @Param("param") AgentWithdrawalApplyPageParam param);

    AgentWithdrawalApplyVo getAgentWithdrawalApply(@Param("id") Long id);

    PlatformWithdrawalApplyVo getPlatformWithdrawalApply(@Param("id") Long id);

    IPage<PlatformWithdrawalApplyVo> selectPlatformWithdrawalApplyList(@Param("page") Page page,
                                                                       @Param("param") PlatformWithdrawalApplyPageParam param);

    IPage<PlatformWithdrawalVo> getWithdrawalAccountList(@Param("page") Page page,
                                                         @Param("param") PlatformWithdrawalPageParam param);

    PlatformWithdrawalVo getPlatformWithdrawalVo(@Param("id") Long id);


}
